package com.qijian.maindata.domain.query;

import com.baomidou.mybatisplus.annotation.TableName;
import com.qijian.common.utils.mybatis.WhereType;
import com.qijian.common.utils.mybatis.WhereTypeEnum;
import lombok.Data;
import lombok.ToString;

import java.math.BigDecimal;
import java.util.Set;


/**
 * 车间项目绩效对象 查询条件类
 *
 * @author qijian
 * @date 2024-08-29
 */

@Data
@ToString
@TableName("main_performance_summary")
public class PerformanceSummaryQuery {

    @WhereType(filed = "id")
    private Long id;
    @WhereType(filed = "id", type = WhereTypeEnum.IN)
    private Set<Long> ids;
    @WhereType(filed = "data_type")
    private Integer dataType;
    @WhereType(filed = "name")
    private String name;
    @WhereType(filed = "user_id")
    private Long userId;
    @WhereType(filed = "ym")
    private String ym;
    @WhereType(filed = "dept_id")
    private Long deptId;
    @WhereType(filed = "dept_name")
    private String deptName;
    @WhereType(filed = "dept_cost")
    private BigDecimal deptCost;
    @WhereType(filed = "base_performance")
    private BigDecimal basePerformance;
    @WhereType(filed = "total_price")
    private BigDecimal totalPrice;
    @WhereType(filed = "month_performance")
    private BigDecimal monthPerformance;
    @WhereType(filed = "dept_performance")
    private BigDecimal deptPerformance;
    @WhereType(filed = "debit_amount")
    private BigDecimal debitAmount;
    @WhereType(filed = "theory_performance")
    private BigDecimal theoryPerformance;
    @WhereType(filed = "final_performance")
    private BigDecimal finalPerformance;
    @WhereType(filed = "is_locked")
    private Boolean isLocked;
    @WhereType(filed = "locked_by")
    private String lockedBy;
    @WhereType(filed = "version")
    private String version;

    @WhereType(filed = "ym")
    private String month;

    @WhereType(filed = "dept_name",type = WhereTypeEnum.NOTNULL)
    private Boolean deptNameNotNull;

    @WhereType(filed = "name",type = WhereTypeEnum.NOTNULL)
    private Boolean nameNotNull;

}
